Telegram Group & Telegram Channel
📍 How to: кэширование в Python с помощью flexicache

В Python удобно использовать декораторы для кэширования результатов функций и методов — как в оперативной памяти, так и во временных хранилищах вроде memcached. Один из наиболее гибких инструментов для этого — flexicache из библиотеки fastcore.

flexicache — это декоратор, который поддерживает:
• LRU-кэширование (удаление наименее используемых элементов),
• политику истечения кэша по времени — time_policy,
• инвалидирование кэша при изменении файла — mtime_policy.

➡️ Пример: time_policy
@flexicache(time_policy(0.1))
def random_func():
return randint(1, 1000)

assert random_func() == random_func()
sleep(0.2)
assert random_func() != random_func()


➡️ Пример: mtime_policy. Инвалидирование при изменении файла main.py
@flexicache(mtime_policy('main.py'))
def random_func():
return randint(1, 1000)

Path('main.py').touch() # обновление времени изменения


➡️ Пример: совмещение политик
@flexicache(time_policy(0.1), mtime_policy('main.py'))
def random_func():
return randint(1, 1000)


Кэш сбрасывается либо по времени, либо при обновлении файла — в зависимости от того, что произойдёт первым.

➡️ Пример: LRU-кэширование
@flexicache(maxsize=2)
def random_func(v):
return randint(1, 1000)

random_func(1)
random_func(2)
random_func(3) # результат для аргумента 1 будет удалён


➡️ Пример: удобный timed_cache. Для кэша с таймаутом и ограничением размера
from fastcore.xtras import timed_cache

@timed_cache(0.1, maxsize=2)
def random_func(v):
return randint(1, 1000)


📌 flexicache — гибкий и мощный инструмент для продвинутого кэширования в Python. Поддерживает политики истечения, комбинирование стратегий и заменяет стандартный lru_cache.

Библиотека питониста #буст
Please open Telegram to view this post
VIEW IN TELEGRAM



tg-me.com/pyproglib/6711
Create:
Last Update:

📍 How to: кэширование в Python с помощью flexicache

В Python удобно использовать декораторы для кэширования результатов функций и методов — как в оперативной памяти, так и во временных хранилищах вроде memcached. Один из наиболее гибких инструментов для этого — flexicache из библиотеки fastcore.

flexicache — это декоратор, который поддерживает:
• LRU-кэширование (удаление наименее используемых элементов),
• политику истечения кэша по времени — time_policy,
• инвалидирование кэша при изменении файла — mtime_policy.

➡️ Пример: time_policy

@flexicache(time_policy(0.1))
def random_func():
return randint(1, 1000)

assert random_func() == random_func()
sleep(0.2)
assert random_func() != random_func()


➡️ Пример: mtime_policy. Инвалидирование при изменении файла main.py
@flexicache(mtime_policy('main.py'))
def random_func():
return randint(1, 1000)

Path('main.py').touch() # обновление времени изменения


➡️ Пример: совмещение политик
@flexicache(time_policy(0.1), mtime_policy('main.py'))
def random_func():
return randint(1, 1000)


Кэш сбрасывается либо по времени, либо при обновлении файла — в зависимости от того, что произойдёт первым.

➡️ Пример: LRU-кэширование
@flexicache(maxsize=2)
def random_func(v):
return randint(1, 1000)

random_func(1)
random_func(2)
random_func(3) # результат для аргумента 1 будет удалён


➡️ Пример: удобный timed_cache. Для кэша с таймаутом и ограничением размера
from fastcore.xtras import timed_cache

@timed_cache(0.1, maxsize=2)
def random_func(v):
return randint(1, 1000)


📌 flexicache — гибкий и мощный инструмент для продвинутого кэширования в Python. Поддерживает политики истечения, комбинирование стратегий и заменяет стандартный lru_cache.

Библиотека питониста #буст

BY Библиотека питониста | Python, Django, Flask




Share with your friend now:
tg-me.com/pyproglib/6711

View MORE
Open in Telegram


Библиотека питониста | Python Django Flask Telegram | DID YOU KNOW?

Date: |

The STAR Market, as is implied by the name, is heavily geared toward smaller innovative tech companies, in particular those engaged in strategically important fields, such as biopharmaceuticals, 5G technology, semiconductors, and new energy. The STAR Market currently has 340 listed securities. The STAR Market is seen as important for China’s high-tech and emerging industries, providing a space for smaller companies to raise capital in China. This is especially significant for technology companies that may be viewed with suspicion on overseas stock exchanges.

Look for Channels Online

You guessed it – the internet is your friend. A good place to start looking for Telegram channels is Reddit. This is one of the biggest sites on the internet, with millions of communities, including those from Telegram.Then, you can search one of the many dedicated websites for Telegram channel searching. One of them is telegram-group.com. This website has many categories and a really simple user interface. Another great site is telegram channels.me. It has even more channels than the previous one, and an even better user experience.These are just some of the many available websites. You can look them up online if you’re not satisfied with these two. All of these sites list only public channels. If you want to join a private channel, you’ll have to ask one of its members to invite you.

Библиотека питониста | Python Django Flask from es


Telegram Библиотека питониста | Python, Django, Flask
FROM USA